/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.tbp.controle;

import br.com.tbp.exception.PersistenciaException;
import br.com.tbp.model.domain.Usuario;
import br.com.tbp.persitence.FabricaDePersistencia;
import br.com.tbp.persitence.dao.UsuarioDao;
import java.util.List;

/**
 *
 * @author Diego Freire
 */
public class ControleUsuario {

    public void adicionar(Usuario usuario) throws PersistenciaException {
        UsuarioDao dao = FabricaDePersistencia.createUsuarioDao();
        dao.adicionar(usuario);
    }

    public long maxUsuarioId() throws PersistenciaException {
        UsuarioDao dao = FabricaDePersistencia.createUsuarioDao();
        return dao.maxUsuarioId();
    }

    public int modificar(Usuario usuario) throws PersistenciaException {
        UsuarioDao dao = FabricaDePersistencia.createUsuarioDao();
        return dao.modificar(usuario);
    }

    public int modificarSenha(long usuarioId, String antiga, String nova) throws PersistenciaException {
        UsuarioDao dao = FabricaDePersistencia.createUsuarioDao();
        return dao.modificarSenha(usuarioId, antiga, nova);
    }

    public Usuario get(long usuarioId) throws PersistenciaException {
        UsuarioDao dao = FabricaDePersistencia.createUsuarioDao();
        return dao.get(usuarioId);
    }

    public Usuario login(String login, String senha) throws PersistenciaException {
        UsuarioDao dao = FabricaDePersistencia.createUsuarioDao();
        return dao.login(login, senha);
    }

    public List<Usuario> listar() throws PersistenciaException {
        UsuarioDao dao = FabricaDePersistencia.createUsuarioDao();
        return dao.listar();
    }

    public List<Usuario> pesquisarPeloNome(String nome) throws PersistenciaException {
        UsuarioDao dao = FabricaDePersistencia.createUsuarioDao();
        return dao.pesquisarPeloNome(nome);
    }

    public List<Usuario> pesquisarPeloLogin(String login) throws PersistenciaException {
        UsuarioDao dao = FabricaDePersistencia.createUsuarioDao();
        return dao.pesquisarPeloLogin(login);
    }

    public int modificarSenha(long usuarioId, String nova) throws PersistenciaException {
        UsuarioDao dao = FabricaDePersistencia.createUsuarioDao();
        return dao.modificarSenha(usuarioId, nova);
    }
}
